[Imprint][Data Privacy Statement][E-Mail]

Back to main index. View the specification. View theorem base summary, View theorem base listing, the used properties by spec, the dependency list, the symbol table,

Specification RG2+DF-Theory
generic specification
   

   
parameter
   state

   using nat

target
   
   
   
   predicates  RG-restr
              : (state → bool) × (state → bool) × (state × state → bool) × (state × state → bool) × (state → bool) × (state → bool) × (state → bool) × 
                (state × state → bool) × (state × state → bool) × (state → bool) × (state → bool) × (state → bool)
              ;
   
   variables  bv : bool;
              R : state × state → bool;
              G : state × state → bool;
              R1 : state × state → bool;
              G1 : state × state → bool;
              R2 : state × state → bool;
              G2 : state × state → bool;
              Init : state → bool;
              Inv : state → bool;
              Pre : state → bool;
              Pre1 : state → bool;
              Pre2 : state → bool;
              Post : state → bool;
              Post1 : state → bool;
              Post2 : state → bool;
              Runs : state → bool;
              Runs1 : state → bool;
              Runs2 : state → bool;
              N : nat flexible;
   
   

   

   axioms RG-restr-def
          : ⊦   RG-restr(Init, Inv, R1, G1, Pre1, Post1, Runs1, R2, G2, Pre2, Post2, Runs2)
              ↔   (∀ s, s0. 
                       (G1(s, s0) → R2(s, s0)) ∧ (G2(s, s0) → R1(s, s0)) ∧ (Pre1(s) ∧ R1(s, s0) → Pre1(s0)) ∧ (Pre2(s) ∧ R2(s, s0) → Pre2(s0))
                     ∧ (Post1(s) ∧ R1(s, s0) → Post1(s0)) ∧ (Post2(s) ∧ R2(s, s0) → Post2(s0)))
                ∧ (∀ s, s0, s1. (R1(s, s0) ∧ R1(s0, s1) → R1(s, s1)) ∧ (R2(s, s0) ∧ R2(s0, s1) → R2(s, s1)))
                ∧ (∀ s. 
                       (∃ s. Init(s)) ∧ (Init(s) → Pre1(s) ∧ Pre2(s) ∧ Inv(s)) ∧ R1(s, s) ∧ R2(s, s) ∧ (Inv(s) → Runs1(s) ∨ Runs2(s))
                     ∧ (Post1(s) → Runs2(s)) ∧ (Post2(s) → Runs1(s)));

   

   
end generic specification